cmake_minimum_required(VERSION 3.15)

project(QLogger)

# QT env configuration
set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)

find_package(QT NAMES Qt5 COMPONENTS 
    Core 
    REQUIRED
)
find_package(Qt${QT_VERSION_MAJOR} COMPONENTS 
    Core 
    REQUIRED
)
add_library(QLogger STATIC
    src/qlogger.cpp
    include/qlogger.h
    include/QLogger
)
add_library(utils::QLogger ALIAS QLogger)

find_package(spdlog CONFIG REQUIRED)
find_package(Threads REQUIRED)

target_include_directories(QLogger
    PUBLIC
    ${PROJECT_SOURCE_DIR}/include
    Qt${QT_VERSION_MAJOR}::Core
    spdlog::spdlog
)
target_link_libraries(QLogger
    PUBLIC
    spdlog::spdlog
    Qt${QT_VERSION_MAJOR}::Core
    Threads::Threads
)

add_subdirectory(test)